Modern Java in Action

Modern Java in Action

  • Downloads:8841
  • Type:Epub+TxT+PDF+Mobi
  • Create Date:2021-10-12 09:53:41
  • Update Date:2025-09-06
  • Status:finish
  • Author:Raoul-Gabriel Urma
  • ISBN:1617293563
  • Environment:PC/Android/iPhone/iPad/Kindle

Summary

Modern applications take advantage of innovative designs, including microservices, reactive architectures, and streaming data。 Modern Java features like lambdas, streams, and the long-awaited Java Module System make implementing these designs significantly easier。 It’s time to upgrade your skills and meet these challenges head on!
Modern Java in Action connects new features of the Java language with their practical applications。 Using crystal-clear examples and careful attention to detail, this book respects your time。 It will help you expand your existing knowledge of core Java as you master modern additions like the Streams API and the Java Module System, explore new approaches to concurrency, and learn how functional concepts can help you write code that’s easier to read and maintain。

Download

Reviews

Claudia V。

I learned a lot from this book though I have some pet peeves。* the author proselytizes the importance of readable code, but then in the chapter with the CompletableFuture he writes a sausage of pipelined lambdas to recover some data from an API。 It's not only hard to read, but I imagine hard to debug as well! * In the functional programming chapter, the author advises that instead of using iterators and loops, use recursion。 I just can't take this advice seriously and made me disregard the rest I learned a lot from this book though I have some pet peeves。* the author proselytizes the importance of readable code, but then in the chapter with the CompletableFuture he writes a sausage of pipelined lambdas to recover some data from an API。 It's not only hard to read, but I imagine hard to debug as well! * In the functional programming chapter, the author advises that instead of using iterators and loops, use recursion。 I just can't take this advice seriously and made me disregard the rest of the chapter。 。。。more

Vzh

The book's very good overall。 Really liked a chapter on CompetableFuture, composition and use cases。However, in 2021, the material might seem a bit outdated, as it features only Java 8/9。 The book's very good overall。 Really liked a chapter on CompetableFuture, composition and use cases。However, in 2021, the material might seem a bit outdated, as it features only Java 8/9。 。。。more

Gencho

Finished it quite ago but still really well formatted with lots of practical examples。 Maybe you can get the updated edition!@

Javkhlant

Good explanations and examples

Hosein

I can only recommend this book。 The best book for the ones who want to jump into Java 8+ features。 With lots of examples and we'll described。 Loved it I can only recommend this book。 The best book for the ones who want to jump into Java 8+ features。 With lots of examples and we'll described。 Loved it 。。。more

vinayak karigar

Excellent book to acquire functional style programming perspective with Java。 Also the authors have clearly explained the reasons behind new features being introduced in the language and how they compare with other competing JVM languages。

Tianyao Chen

Absolutely fantastic! This is one of the best programming books I've ever read。Though the modern Java features are great, Kotlin is still my favorite JVM language:) Absolutely fantastic! This is one of the best programming books I've ever read。Though the modern Java features are great, Kotlin is still my favorite JVM language:) 。。。more

Krupali

Reading a Technical book can be fun Too!Starting from a brief explanation of a feature, why it came into picture and how you should use it as a professional, provided with examples; each chapter contains an excellent guide of leveraging new features while following programming conventions and standards。

Miloš

Doesn't add much compared to the previous edition really Doesn't add much compared to the previous edition really 。。。more

Yaroslav

This review has been hidden because it contains spoilers。 To view it, click here。 Amazing book, 📖, recommend to read if for sure!

Michael Koltsov

Rarely, I want to purchase a book I've read as a hard copy。 I wanted to buy this book badly。Only after checking the cost of this book in Poland I realized that at a price of yearly subscription to Safari Books buying a huge pile of dead wood is not wise enough for me。I had a huge gap in my Java experience due to the fact that I've made a switch to Scala and then to other languages most of them had nothing to do with JVM。 Javascript, Ruby, Python, GO。。。 you name it, I was paid to write in it most Rarely, I want to purchase a book I've read as a hard copy。 I wanted to buy this book badly。Only after checking the cost of this book in Poland I realized that at a price of yearly subscription to Safari Books buying a huge pile of dead wood is not wise enough for me。I had a huge gap in my Java experience due to the fact that I've made a switch to Scala and then to other languages most of them had nothing to do with JVM。 Javascript, Ruby, Python, GO。。。 you name it, I was paid to write in it mostly thanks to my employers' kindness and not because of any particularly need。 The main reason why I've switched from Java to Scala was that the latter felt much sexier with lots of syntactic sugar and nice FP abstractions that felt much closer than the monstrosity I often saw in the java projects I wad to work on。 Did I also mention that one of the first programming languages I've learned was LISP? Functional programming was a big part of my education。And then after all these years I started to see a gradual change in the way way how the Java code is written that felt similar to Scala but without the complexity that it had。 Especially, after loosing all my illusions with GO I decided to give new Java a try。 I played a bit with streams and lambdas, but neither could I understand how their worked nor use them efficiently。This book allowed me to fill this gap。 If you're coming from Java 6 & 7 this book is a must for you。 Lots of example, detailed explanations with multiple peeks under the covers of JVM。The only minor issue is that after changing the release policy Java went quite far from the changes that are described in this book。 Too bad this book isn't updated after every new Java version goes GA 。。。more

Carlos Hernandez Alvarado

This review has been hidden because it contains spoilers。 To view it, click here。 Java 8 in Action (ebook)by Raoul-Gabriel UrmaJava 8 in Action (ebook)by Raoul-Gabriel UrmaJava 8 in Action (ebook)by Raoul-Gabriel UrmaJava 8 in Action (ebook)by Raoul-Gabriel UrmaJava 8 in Action (ebook)by Raoul-Gabriel UrmaJava 8 in Action (ebook)by Raoul-Gabriel UrmaJava 8 in Action (ebook)by Raoul-Gabriel UrmaJava 8 in Action (ebook)by Raoul-Gabriel Urma

Akash Jain

Great book

Hussein Elsayed

A really nice book that I recommend everyone who uses Java 8, 9 to read to understand the motivation behind the new features added in Java 8, 9, 。。。 and a decent comparison between Java and other functional style languages such as Scala。The chapters are actually ordered in a way where you always feel that you want to read more, and if you are an experienced Java developer, you will be surprised how fast you will finish this book and enjoy every single part of it。Kudos to the authors and their wr A really nice book that I recommend everyone who uses Java 8, 9 to read to understand the motivation behind the new features added in Java 8, 9, 。。。 and a decent comparison between Java and other functional style languages such as Scala。The chapters are actually ordered in a way where you always feel that you want to read more, and if you are an experienced Java developer, you will be surprised how fast you will finish this book and enjoy every single part of it。Kudos to the authors and their writing style, I admired their style and will of course follow them to read more books written by anyone of them。 。。。more

Krishna Chaitanya

Excellent material, if you want to have a good grasp of Java 8 features in one book then this is it。I've seriously wanted to learn java 8's Lamda features because it introduced functional style programming in Object-Oriented Java, I've completed few online courses on Java 8 though they were good but not in-depth。That missing feeling is vanished after reading this book。 The concepts are clearly explained with detailed examples also by stating and explaining underlying design and classes。This book Excellent material, if you want to have a good grasp of Java 8 features in one book then this is it。I've seriously wanted to learn java 8's Lamda features because it introduced functional style programming in Object-Oriented Java, I've completed few online courses on Java 8 though they were good but not in-depth。That missing feeling is vanished after reading this book。 The concepts are clearly explained with detailed examples also by stating and explaining underlying design and classes。This book also includes refactoring the legacy code to Java 8 which is super helpful if you're working on a legacy Java project。The exercises are challenging enough to put your learning into practice。 I highly recommend this if you want solid understanding of Java 8 features。 。。。more

David Miller

I read the earlier edition of this book, which was titled "Java 8 in Action"。 This edition covers some topics from Java 9, and expands coverage of reactive programming。 Overall a pretty good introduction to the language, concentrating on streams, lambdas, and functional-style programming。 I read the earlier edition of this book, which was titled "Java 8 in Action"。 This edition covers some topics from Java 9, and expands coverage of reactive programming。 Overall a pretty good introduction to the language, concentrating on streams, lambdas, and functional-style programming。 。。。more

Jean Tessier

I had been coding in Groovy for the previous 10 years and I needed to get up to speed on the new Java idioms, like lambdas and streams。The book does a good job of covering the Stream API and how it benefit from lambdas and method references。 I like how it can infer the functional interface of a lambda expression based on context (see Figure 3。5 on page 67)。 It is an interesting alternative to the more loosely typed approach in Groovy。I find it interesting how streams use a lazy implementation an I had been coding in Groovy for the previous 10 years and I needed to get up to speed on the new Java idioms, like lambdas and streams。The book does a good job of covering the Stream API and how it benefit from lambdas and method references。 I like how it can infer the functional interface of a lambda expression based on context (see Figure 3。5 on page 67)。 It is an interesting alternative to the more loosely typed approach in Groovy。I find it interesting how streams use a lazy implementation and how their pipelines are demand-driven。 It makes infinite streams possible, with iterate (takes a UnaryFunction) and generate (takes a Supplier) variations。 It does make it more difficult to have one pipeline compute multiple results, though。 I couldn't find a justification as to why there are specialized versions for int, long, and double, but not for float (or byte, for that matter)。 The contracts for Collector and Spliterator are rather complex。I'm not keen on using Optional all over the place, especially in light of Groovy's null-safe dereferencing operators ?。 and 。*。 It does help with creating call chains, but the mental load is quite severe。 Combine it with CompleteableFuture and you have to think really hard about what is going on for every method call。All these new APIs rely a lot on static helper methods。 I'd need some actual practice using them to understand better how to unit test code that's using them。I was hopeful for the Flow API and reactive programming, but there is still a lot of wiring up to do。 I was hoping for something closer to event-based models where publishers and subscribers don't know about each other, and how you can get temporal decoupling too, where they don't have to be available at the same time。I don't see the need for the Java module system at this time。The parts on functional programming were interesting, but I wouldn't want to do it in Java。 Functional languages handle these concepts much better。 Still, in order to use streams well, you need to know about pure functions and write code with no side-effects。The authors very frequently refer back to previous sections。 It gets a little annoying after a while。 But I can see how it can be helpful if someone starts reading in the middle of the book, chasing after a specific topic, for them to understand where the current context is coming from。The tone can seem at times a little condescending towards more theoretical approaches, like pure mathematics。 It definitely favors more practical experimentations。One quick quote that gave me pause:Programmer efficiency is often more important than small differences in execution time。 p。 458 This is dangerous advice if you don't give more context。 How often is that code executed? How critical is it for its enclosing code to be responsive? I agree that 90% of the time, programmer efficiency will win。 But you must not lose sight of that other 10%。 。。。more

Daren Thomas

This book was informative and technically sound with a nice mix of explanation and examples。 Personally I liked that the code listings were large enough to illustrate the topic, but not so large they needed to be separate from the book。 Sometimes it's nice to have everything in one place (i。e。 on the paper in front of you)。 Overall it was well written and has earned a place on my reference shelf。 My only (minor) complaint is that the book is a little verbose at times。 I found that a little ironi This book was informative and technically sound with a nice mix of explanation and examples。 Personally I liked that the code listings were large enough to illustrate the topic, but not so large they needed to be separate from the book。 Sometimes it's nice to have everything in one place (i。e。 on the paper in front of you)。 Overall it was well written and has earned a place on my reference shelf。 My only (minor) complaint is that the book is a little verbose at times。 I found that a little ironic considering a major benefit of Lambdas is reducing verbosity in code。 。。。more

Pierre

very detailed in stream and lambda 。worth time to read it

Julio Biason

To be short: It's a good book, but it is extremely (and unnecessary) verbose。It covers the new stuff on Java 8 (like streams and lambdas) and some of Java 9 (like the Flow/reactive interface)。 It does a good job on Streams and Lambdas, but seems to fall a bit short on the reactive interface, maybe 'cause it's just an interface, although I found the examples a little bit missing in some points, like showing the Three interfaces, Subscriber, Subscription and Publisher, but showing examples without To be short: It's a good book, but it is extremely (and unnecessary) verbose。It covers the new stuff on Java 8 (like streams and lambdas) and some of Java 9 (like the Flow/reactive interface)。 It does a good job on Streams and Lambdas, but seems to fall a bit short on the reactive interface, maybe 'cause it's just an interface, although I found the examples a little bit missing in some points, like showing the Three interfaces, Subscriber, Subscription and Publisher, but showing examples without the Publisher。 A bit worse (IMHO), is that, in order to produce an example, instead of publishing some data, it shows a generic publisher of sequential numbers, in which it calls the real publisher。Also, the authors seem a bit too enthusiastic about lambdas。 Even when the code becomes less readable -- specially in the Flow examples -- they still use lambdas。 They are so into it that the example of a for being converted to a stream is shown at least 4 times。There are too many "as follows"; there are too many "in the next section" just before the next section; there is too much repetition that shouldn't be there。Again, the content is good, but the text is terrible。 。。。more

Valery Lukin

Amazing book that describes all java 8 new features in really good and approachable way。 Recommend it to anyone who wants to clear all the gaps of java 8 they have right now。

Valeri Dmg

Very interesting and nicely written book about Java 8

Frank

Reading the second edition with some 9 10 11。 Worthwhile review。

Dariusz Mydlarz

Even though Java 8 is with us for a couple of years it is still worth to go deeper into details。 This book is a great resource to do so。 I mostly liked the chapter about parallel data processing and performance。

Rituraj Gupta

just interesting story description and basic concept explained very well。

Andrzej Szelemetko

A hands-on introduction to the new Java 8 features。 Beginning with lambadas and going all the way through each new concept, including streams, optionals, default methods, completable future, new date api。 Each concept is well explained and compared to 'the old way' of coding。 There is a dedicated chapter showing how to refactor existing pre-Java 8 code using the new Java features。This book is not recommended for someone who just starts his adventure with programming。 It's good to have some worki A hands-on introduction to the new Java 8 features。 Beginning with lambadas and going all the way through each new concept, including streams, optionals, default methods, completable future, new date api。 Each concept is well explained and compared to 'the old way' of coding。 There is a dedicated chapter showing how to refactor existing pre-Java 8 code using the new Java features。This book is not recommended for someone who just starts his adventure with programming。 It's good to have some working knowledge of Java before reaching for this book。 。。。more

Anna

Great explanation of streams, lambdas, optionals and completable futures。 Would highly recommend as a brief introduction to functional programming。 Also great for anyone willing to catch up on one of the most important updates for the Java language。

Lukasz

Very comprehensive and easy to read introduction to Java 8 and couple other features that were introduced lately。 Great for people actually know Java, but want to update their knowledge with stuff that every Java developer should know。

Matteo Mortari

I found this book very helpful for making this big leap, because now sometimes while I face specific implementation challenges the penny-drops, I realize I've seen analogous examples in the book already, so I can apply elegant solutions I learned through this book while I write my own code。Also, in my case I had been exposed to functional programming concepts by following courses on Scala and Haskell, and I was looking for a guide to apply some of those concepts back to Java - I tried to read so I found this book very helpful for making this big leap, because now sometimes while I face specific implementation challenges the penny-drops, I realize I've seen analogous examples in the book already, so I can apply elegant solutions I learned through this book while I write my own code。Also, in my case I had been exposed to functional programming concepts by following courses on Scala and Haskell, and I was looking for a guide to apply some of those concepts back to Java - I tried to read some tutorials online but it's all scattered information, I was actually looking for an organic presentation of Java 8, and this book was spot on: a well organized throughout presentation, I feel I've been guided on a nice journey of exploration of Java 8。 I don't think people need to be exposed to FP beforehand tackling Java 8 or reading this book, I just wanted to mention another of the reasons why it was really helpful for me。Finally, I think what I gained by reading this book, is that now I have some additional and well-grounded knowledge of the new Java 8 APIs and concepts: what is available, why have been introduced, and when/where is a good case of applying them。 。。。more